//using System;
//using System.Collections.Generic;
//using Publicidades = PortalCurriculo.Publicidades;
//using PortalCurriculo.DAL.Linq;
//using System.Data.Linq;

//namespace PortalCurriculo.DAL.Publicidades
//{
//      public class Periodo : IPeriodo
//      {
//         PortalCurriculoDataContext portalCurriculoDB = new PortalCurriculoDataContext();

//         #region Periodo Members

//         public void Salvar(Publicidades.Periodo periodo)
//         {
//            ExecutarLinq(periodo, Acao.INSERIR);
//         }

//         public void Alterar(Publicidades.Periodo periodo)
//         {
//            ExecutarLinq(periodo, Acao.ALTERAR);
//         }

//         public Publicidades.Periodo SelecionarPorCodigo(Publicidades.Periodo periodo)
//         {
//            return ConverterParaModel(SelecionarLinq(periodo, Acao.RETORNAR_UNICO))[0];
//         }

//         public List<Publicidades.Periodo> Selecionar(Publicidades.Periodo periodo)
//         {
//            return ConverterParaModel(SelecionarLinq(periodo, Acao.LISTAR));
//         }

//         public void Inativar(Publicidades.Periodo periodo)
//         {
//            ExecutarLinq(periodo, Acao.INATIVAR);
//         }

//         #endregion

//         private void ExecutarLinq(Publicidades.Periodo periodo, string acao)
//         {
//            portalCurriculoDB.pPeriodoManipulacao(acao, periodo.Codigo, periodo.Descricao, 
//               periodo.QuantidadeDias, periodo.Ativo);
//         }

//         private ISingleResult<pPeriodoManipulacaoResult> SelecionarLinq(Publicidades.Periodo periodo, string acao)
//         {
//            return portalCurriculoDB.pPeriodoManipulacao(acao, periodo.Codigo, periodo.Descricao, 
//               periodo.QuantidadeDias, periodo.Ativo);
//         }

//         private List<Publicidades.Periodo> ConverterParaModel(ISingleResult<pPeriodoManipulacaoResult> resultPeriodo)
//         {
//            ISingleResult<pPeriodoManipulacaoResult> result = resultPeriodo;
//            List<Publicidades.Periodo> periodos = new List<Publicidades.Periodo>();

//            foreach (pPeriodoManipulacaoResult item in result)
//            {
//               Publicidades.Periodo periodo = new Publicidades.Periodo()
//               {
//                  #region Dados Periodo
//                  Codigo = (int)item.Codigo,
//                  Descricao = item.Descricao,
//                  QuantidadeDias = (int)item.QuantidadeDias,
//                  Ativo = (bool)item.Ativo
//                  #endregion
//               };


//               periodos.Add(periodo);
//            }

//            return periodos;
//         }
//      }
//}
